Micron Document
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| SparkN0de-git | SparkN0de |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


Displaying Rendered • View rawDownload


docs/agents/conventions/frontend.md 7a02eae651e4ffbcebd359f86d665d3cf509b5d9 (7a02eae6) Text, 698 B

Frontend conventions

Applies when editing T383838meshchatx/src/frontend/**/*.{vue,js}.

• Vue 3 Options API is the dominant pattern. Match the file you edit.
• API calls go through T383838window.api (not ad-hoc axios imports in pages).
• Toasts: T383838ToastUtils.success|error|warning|info|loading|dismiss.
• New top-level pages need: route in T383838main.js, nav entry when discoverable, T383838en.json keys, frontend tests.
• Do not use T383838_-prefixed keys in Vue T383838data() (T383838vue/no-reserved-keys).
• File inputs: prefer broad T383838accept for identity keys (T383838.bin,.key,.identity,application/octet-stream,*/*). Database restore stays T383838.zip.
• Prefer existing MaterialDesignIcon / layout patterns over new design systems.


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────